// gcc test_rtdebug.c module1.c module2.c ../rtdebug.c

#define __RT__DEBUG 1

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>

#include "module1.h"
#include "module1.h"
#include "module1.h"
#include "module2.h"

int main(int argc, char *argv[])
{
	TRY(Except_SQLite3){
		TRY(Except_SSL){
Label_Start:
			db_open();
			encrypt();
			decrypt();
			db_close();

		}CATCH(Base64_Enc_Err){
			_what(Except_SSL);
			decrypt();  // go on when except

		}CATCH(Base64_Dec_Err){
			_what(Except_SSL);
			db_close();  // go on when except

		}ENDTRY
	}CATCH(DB_Open_Err){
		_what(Except_SQLite3);
		encrypt();  // go on when except

	}ELSE{
		_what(Except_SQLite3);
		goto Label_Exit;  // safe exit
	}ENDTRY

Label_Exit:
	_print("Bye.");
}
